package com.ruoyi.system.api.mapper;

import com.ruoyi.system.api.domain.FseLocationLog;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * FSE位置坐标日志Mapper接口
 * 
 * @author shihx
 * @date 2020-03-04
 */
public interface FseLocationLogMapper 
{
    /**
     * 查询FSE位置坐标日志
     * 
     * @param id FSE位置坐标日志ID
     * @return FSE位置坐标日志
     */
    public FseLocationLog selectFseLocationLogById(Long id);

    /**
     * 查询FSE位置坐标日志列表
     * 
     * @param fseLocationLog FSE位置坐标日志
     * @return FSE位置坐标日志集合
     */
    public List<FseLocationLog> selectFseLocationLogList(FseLocationLog fseLocationLog);

    /**
     * 新增FSE位置坐标日志
     * 
     * @param fseLocationLog FSE位置坐标日志
     * @return 结果
     */
    public int insertFseLocationLog(FseLocationLog fseLocationLog);

    /**
     * 修改FSE位置坐标日志
     * 
     * @param fseLocationLog FSE位置坐标日志
     * @return 结果
     */
    public int updateFseLocationLog(FseLocationLog fseLocationLog);

    /**
     * 删除FSE位置坐标日志
     * 
     * @param id FSE位置坐标日志ID
     * @return 结果
     */
    public int deleteFseLocationLogById(Long id);

    /**
     * 批量删除FSE位置坐标日志
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteFseLocationLogByIds(String[] ids);

    /**
     * 查询历史轨迹
     * @param locationLog
     * @return
     */
    List<FseLocationLog> getFseLocationLog(FseLocationLog locationLog);

    /**
     * 查询异常fse
     * @param params
     * @return
     */
    List<FseLocationLog> getErrorFse(Map<String, String> params);

    /**
     * 查询Team下fse
     * @param params
     * @return
     */
    List<FseLocationLog> selectTeamFseLocal(Map<String, String> params);

    /**
     * 查询历史位置
     * @param teamleaderId
     * @param fseName
     * @param startTime
     * @param endTime
     * @return
     */
    List<FseLocationLog> selectHistoryList(@Param("teamleaderId") String teamleaderId, @Param("fseId")String fseId, @Param("fseName")String fseName, @Param("startTime")String startTime, @Param("endTime")String endTime);

    /**
     * 历史轨迹fse下拉内容
     * @param params
     * @return
     */
    List<Map<String, Object>> selectFseByTlid(Map<String, String> params);
}
